home *** CD-ROM | disk | FTP | other *** search
-
-
- *** CONTROL80 V1.21
-
- by Jon Mattson with modifications by ed bell
-
-
- FENDER'S PREMUMBLE TO ED'S FOREWARD: When ed talks about Control80's
- "popularity" he really means my addiction to it. Since I edit every program
- that appears on LOADSTAR 128 (usually in an afternoon or night) I tend to
- automatically install Control80. It provides the only way I know of to PEEK
- and POKE the VDC chip, to save and restore the screen, to install a custom
- font, and several other necessary things. ed did a magnificent job of
- catering to my addiction and I appreciate it. If you are a programmer you
- will immediately recognize the power of MEGaBasic. I hope that you will
- take advantge of ed's beyond-the-call-of-duty work and use Control80, too.
- If you don't, I'll just have to add it later.
-
- Foreword by e.g.bell
-
- One of the problems with a program like Control80 is its popularity.
- Control80 occupies some prime 'real estate' in the Commodore 128. The
- wonderful capabilities of the program are such that no one who uses it is
- willing to give it up without a fight...even for other very valuable
- utilities. I had encountered this reluctance on a previous submission to
- LOADSTAR, and again with MEGaBasic, so I decided it was time to address the
- situation...to find a way that everyone could use MEGaBasic AND Control80...
- benefit from both with minimum of sacrifice by either.
-
- Why do something like this in the first place? There are two reasons I
- felt it was needed. First, with Control80 solidly fixed at 4864, it is hard
- to develop some types of utilities for that area because users are reluctant
- to give up Control80, but this is a LARGE, popular block of RAM.
-
- Second, though programs using Control80 will probably be BLOADing it
- prior to use, this can get old when you are writing code and testing your
- work as you go along if you want to have all of MEGaBasic's added abilities
- AND those of Control80. As a program gets large, you really start to
- appreciate FIND and CHANGE utilities, etc..
-
- With the cooperation of Fender Tucker, I acquired the source code for
- Control80 and converted it for use with my assembler (EGads). I then
- modified it so that it could co-exist with MEGaBasic in spite of the fact
- that both programs use the same memory area. The result is MEGaBasic 2.16
- with Control80.
-
- *** New Control80 Command
-
- This collective program saw the addition of a new command to each
- 'member' program. MEGaBasic now has a 'CONTROL' command which installs and
- activates Control80. Control80 now has a 'MEGA' command that installs and
- activates MEGaBasic.
-
- *** Achilles Heel
-
- The only unfortunate situation in this marriage of these two programs is
- that MEGaBasic is not able to recognize the new commands of Control80 in the
- program correctly. And since MEGaBasic can only operate when Control80 is
- inactive, listing Control80 programs is going to show odd characters where
- there are Control80 commands used. If you've ever listed a program with
- these commands when Control80 is not active, you will know what I mean. The
- commands are still in memory. They just cannot be listed by MEGaBasic. You
- won't be able to FIND or CHANGE them either, since they are tokenized and
- MEGaBasic only recognizes the standard tokens.
-
- You WILL notice printable characters where these commands are. ***DO
- NOT*** try to use MEGaBasic's CHANGE command on them! ***DO NOT*** edit
- them or delete them. Control80 uses dual-token keywords for its commands.
- Editing these commands with Control80 inactive could remove one part of the
- command but not the 'trigger' character that signals dual-tokens to the
- C128.
-
- *** Change Of Address
-
- In an update like this, it is almost to be expected that there will be
- some casualties in terms of things that were at one location that are now in
- another location. I'm wasting this paragraph to tell you that there is no
- such thing in the upgraded Control80. All of the POKEs and the routine
- address mentioned in the section on MINE below were kept at the same
- locations. We aim to please! All existing routines should therefore work
- with the upgrade.
-
- *** Found
-
- While under the hood, I saw the opportunity to give you a bit more
- control over where drive and printer accesses are directed. As written,
- Control80 was limited to drive 8 and printer 4. I made one minor change for
- the printer, and provided the POKE address for both. Thus, with a simple
- POKE prior to any drive or printer access, you can use any valid number
- drive, and either printer 4 or 5. You will have to do the testing to make
- sure the device actually exists. I only had so much room with which to
- work, which, incidentally, is why I didn't just test for another parameter
- in the commands instead of requiring a POKE.
-
- *** Recovered
-
- The version of Control80 I was given would not VSAVE for me. I found
- that the original code had a branch to an incorrect address. A very minor
- thing that was easily corrected, so if you have not had this command, you
- now can enjoy the full Control80 arsenal.
-
- *** Added
-
- The demo utility provided in the C80DEMO file that rotates characters is
- definitely interesting. I provided one of my own that will now be resident
- until you install a different one. This utility, which runs when you
- install/activate Control80, and when you issue the MINE command, brings up a
- screen of all of the Control80 commands along with the syntax. This will be
- present every time you 'install' or BLOAD this version of Control80. That
- way, you have an immediate use of the MINE command as a help utility.
-
- Included in the package is the Control80/MEGaBasic combination, and also
- a standalone version of Control80 which can be BLOADed by your BASIC
- programs. This mini-version does not support the MEGA command because it
- was not installed through MEGaBasic. The standalone version was necessary
- due to vector management required for switching back and forth between
- MEGaBasic and CONTROL80. Certain things have to be done in one situation,
- and must not be done in the other. Everything is handled internally. In
- addition, when using the combination program, which installs at 57344 in RAM
- 1, MEGaBasic protects itself from BASIC variables...so yes, you can use that
- version if you prefer by just 'installing' it before running your program
- with the CONTROL command.
-
- All of this said, kudos to Jon Mattson for a remarkable utility that
- brings such a wealth of power into the reach of everyone so painlessly. I
- hope as time goes on that MEGaBasic will become as popular with users as
- Control80 has become.
-
- *** Version Number
-
- Note that I changed the Control80 verson number from 1.2 to 1.21.
-
- egb
-
-
- For the formal documentation to Control80 V1.21 see the text file called
- "t.control80 2".
-
- \\\\\ RETURN - Menu \\\\\
-
-